Fix serial interrupt's destination
authorKeir Fraser <keir.fraser@citrix.com>
Mon, 13 Sep 2010 16:37:25 +0000 (17:37 +0100)
committerKeir Fraser <keir.fraser@citrix.com>
Mon, 13 Sep 2010 16:37:25 +0000 (17:37 +0100)
Lowest Priority can't use with invalid cpu_mask, and the default value
of CPU_MASK_ALL may cover CPU which wasn't online.

From: "Yang, Sheng" <sheng.yang@intel.com>
Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
xen/arch/x86/smpboot.c

index baae4f3584c087d612c7c3519db283d4c426a4fe..365d70a4c47a81e535239077d7fedc72662bc9e3 100644 (file)
@@ -1015,7 +1015,7 @@ void __init smp_intr_init(void)
         irq_vector[irq] = FIRST_HIPRIORITY_VECTOR + seridx + 1;
         per_cpu(vector_irq, cpu)[FIRST_HIPRIORITY_VECTOR + seridx + 1] = irq;
         irq_cfg[irq].vector = FIRST_HIPRIORITY_VECTOR + seridx + 1;
-        irq_cfg[irq].cpu_mask = (cpumask_t)CPU_MASK_ALL;
+        irq_cfg[irq].cpu_mask = cpu_online_map;
     }
 
     /* IPI for cleanuping vectors after irq move */